#ifndef DEFAULT_PHYSICS_H__
#define DEFAULT_PHYSICS_H__

#include "Constants.h"
#include "BodyType.h"

class DefaultPhysics : public OgreNewt::ContactCallback
{
    Ogre::Vector3 gravity;
    void processPickup(OgreNewt::Body *pickup, OgreNewt::Body *ball);
    int userProcess();
    int processBallCollision(OgreNewt::Body *ball_body, OgreNewt::Body *other_body, BodyType &other_type);
public:
    DefaultPhysics() : gravity(Ogre::Vector3::NEGATIVE_UNIT_Y * Constants::GRAVITY_STRENGTH) {}
    //static int CollisionFilter(OgreNewt::Body *, OgreNewt::Body *);
    void gravityCallback( OgreNewt::Body* me );
} ;


#endif
